//
//  AddFolderController.m
//  iGSS
//
//  Copyright 2010 Electronic Business Systems Ltd.
//
//  Licensed under the Apache License, Version 2.0 (the "License");
//  you may not use this file except in compliance with the License.
//  You may obtain a copy of the License at
//
//  http://www.apache.org/licenses/LICENSE-2.0
//
//  Unless required by applicable law or agreed to in writing, software
//  distributed under the License is distributed on an "AS IS" BASIS,
//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//  See the License for the specific language governing permissions and
//  limitations under the License.
//

#import "AddFolderController.h"

#import "FormattingUtilities.h"
#import "GSSCommunicator.h"

@implementation AddFolderController

@synthesize folder;

@synthesize navItem;
@synthesize nameTextField;

- (id)initWithFolder:(GSSObject *)aFolder {
    if (self = [super initWithNibName:@"AddFolderController" bundle:nil]) {
        folder = [aFolder retain];
    }
    return self;
}

- (void)dealloc {
    [folder release];
    
    [navItem release];
    [nameTextField release];
    
    [super dealloc];
}


//MARK: -
//MARK: UIViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    self.navItem.title = LocalizedString(@"Add folder");
    NSString *name = [[GSSCommunicator defaultCommunicator] generateUniqueName:@"untitled folder"
                                                                  withTemplate:@"untitled folder %d"
                                                                     forObject:self.folder];
    self.nameTextField.text = name;
    [self.nameTextField becomeFirstResponder];
}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    return YES;
}


//MARK: -
//MARK: IBActions

- (IBAction)save {
    NSString *name = self.nameTextField.text;
    if ([name length])
        [[GSSCommunicator defaultCommunicator] createFolderNamed:name inFolder:folder];
    [self dismissModalViewControllerAnimated:YES];
}

- (IBAction)cancel {
    [self dismissModalViewControllerAnimated:YES];
}

@end
